Дата премьеры системы: | 2002/10/01 |
Дата последнего релиза: | 2022/04/01 |
Технологии: | Средства разработки приложений |
Содержание |
The Spring Framework (или коротко Spring) — open source фреймворк для Java-платформы и .NET Framework (форк под названием Spring.NET).
MVC
Spring имеет собственную MVC-платформу веб-приложений. Spring MVC предоставляет разработчику следующие возможности (на март 2022 года):
- Ясное и прозрачное разделение между слоями в MVC и запросах.
- Стратегия интерфейсов — каждый интерфейс делает только свою часть работы.
- Интерфейс всегда может быть заменен альтернативной реализацией.
- Интерфейсы тесно связаны с Servlet API.
- Высокий уровень абстракции для веб-приложений.
- В веб-приложениях можно использовать различные части Spring, а не только Spring MVC.
2022: Обнаружение уязвимости нулевого дня
Центр мониторинга и реагирования UserGate сообщил 31 марта 2022 года, о уязвимости нулевого дня в библиотеке Spring, работающей на JDK, которая может нанести урон огромному количеству приложений. На конец марта 2022 года CVE ID еще не присвоен. Рабочее название уязвимости - SpringShell.
Уязвимость существует в ядре Spring на JDK версии 9.0 и выше.
В JDK версии 9.0 и выше атакующий может получить доступ к AccessLogValve и передать вредоносные значения поля через параметр связующей функции фреймворка, что приводит к исполнению произвольного кода на целевой системе.Дмитрий Бородачев, DатаРу Облако: Наше преимущество — мультивендорная модель предоставления облачных услуг
На конец марта 2022 года известно, что для эксплуатации уязвимости необходимо два условия: использование Spring MVC framework и JDK версии 9.0 и выше.
Компания UserGate советует:
- обновить компонент Spring Cloud Function до версий 3.1.7 и 3.2.3 соответственно;
- проверить актуальность подписки на модуль Security Updates. При использовании профиля сигнатур UserGate, все новые сигнатуры начинают работать автоматически.
По информации «Ростелеком-Солар» на 8 апреля 2022 года, критической уязвимости CVE-2022-22965 по CVSS была присвоена оценка опасности 9.8/10 баллов. Она была исправлена в версиях Spring Framework 5.3.18 и 5.2.20.
Уязвимость была выявлена в модуле Spring Core и позволяла привязывать данные в http-запросе к полям объектов приложения. Баг содержался в реализации метода getCachedIntrospectionResults, который может быть использован для несанкционированного доступа к этим объектам при передаче данных имен классов этих объектов через указанный HTTP-запрос.
Уязвимость присутствует в приложениях Spring MVC и Spring WebFlux, работающих под Java Development Kit (версии 9+), эксплуатация которых может привести к компрометации огромного количества серверов. Наиболее высокой угрозе подвержены корпоративные Java-приложения на базе Spring Framework с правами root, так как уязвимость в них позволяет скомпрометировать всю систему.
2010
Текущая версия Spring (на сентябрь 2010 года) - 3.0.3.
Несмотря на то, что Spring Framework не обеспечивал какую-либо конкретную модель программирования, он стал широко распространённым в Java-сообществе главным образом как альтернатива и замена модели Enterprise JavaBeans. Spring Framework предоставляет бо́льшую свободу Java-разработчикам в проектировании, кроме того, он предоставляет хорошо документированные и лёгкие в использовании средства решения проблем, возникающих при создании приложений промышленного масштаба.
Между тем, особенности ядра Spring Framework применимы в любом Java-приложении, и существует множество расширений и усовершенствований для построения веб-приложений на Java Enterprise платформе. По этим причинам Spring приобрёл большую популярность и признаётся разработчиками как стратегически важный фреймворк.
2004-2005: Стабильные релизы
Первый стабильный релиз 1.0 был выпущен в марте 2004. Последующие стабильные релизы вышли в сентябре 2004 года и марте 2005 года.
2003: Выпуск под лицензией Apache 2.0
Фреймворк был впервые выпущен под лицензией Apache 2.0 license в июне 2003 года.
2002: Первая версия
Первая версия была написана Родом Джонсоном, который впервые опубликовал её вместе с изданием своей книги «Expert One-on-One Java EE Design and Development» (Wrox Press, октябрь 2002 года).
Заказчик | Интегратор | Год | Проект |
---|---|---|---|
- Райффайзенбанк (Raiffeisen Bank) | Синимекс (Cinimex) | 2019.06 | |
- Сбербанк | Техно Диасофт, Axenix (ранее Аксенчер Россия) Аксеникс, Инфосистемы Джет | 2018.12 | |
- Теплосеть Санкт-Петербурга | Философия.ИТ | 2017.06 |
Подрядчики-лидеры по количеству проектов
Солар (ранее Ростелеком-Солар) (46)
Финансовые Информационные Системы (ФИС, FIS, Финсофт) (15)
Форсайт (11)
Бипиум (Bpium) (10)
Axiom JDK (БеллСофт) ранее Bellsoft (10)
Другие (393)
Солар (ранее Ростелеком-Солар) (8)
Финансовые Информационные Системы (ФИС, FIS, Финсофт) (4)
IFellow (АйФэлл) (2)
ЛАНИТ - Би Пи Эм (Lanit BPM) (2)
Консом групп, Konsom Group (КонсОМ СКС) (2)
Другие (30)
Солар (ранее Ростелеком-Солар) (10)
Форсайт (3)
Banks Soft Systems, BSS (Бэнкс Софт Системс, БСС) (3)
Cloud.ru (Облачные технологии) ранее SberCloud (2)
КРИТ (KRIT) (2)
Другие (13)
Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров
Солар (ранее Ростелеком-Солар) (2, 48)
Microsoft (41, 47)
Oracle (49, 26)
Hyperledger (Open Ledger Project) (1, 23)
IBM (33, 18)
Другие (602, 308)
Солар (ранее Ростелеком-Солар) (1, 8)
Финансовые Информационные Системы (ФИС, FIS, Финсофт) (1, 4)
Microsoft (4, 3)
Oracle (2, 3)
SAP SE (2, 2)
Другие (16, 19)
Солар (ранее Ростелеком-Солар) (1, 11)
Форсайт (1, 3)
Banks Soft Systems, BSS (Бэнкс Софт Системс, БСС) (1, 3)
Сбербанк (1, 2)
Cloud.ru (Облачные технологии) ранее SberCloud (1, 2)
Другие (9, 9)
Солар (ранее Ростелеком-Солар) (1, 6)
Unlimited Production (Анлимитед Продакшен, eXpress) (1, 6)
МТС Exolve (Межрегиональный ТранзитТелеком, МТТ) (1, 4)
Мобильные ТелеСистемы (МТС) (1, 4)
Форсайт (1, 3)
Другие (14, 24)
Unlimited Production (Анлимитед Продакшен, eXpress) (1, 4)
Мобильные ТелеСистемы (МТС) (2, 3)
Солар (ранее Ростелеком-Солар) (1, 3)
МТС Exolve (Межрегиональный ТранзитТелеком, МТТ) (1, 2)
Оператор Газпром ИД (ГИД) (1, 1)
Другие (14, 14)
Распределение систем по количеству проектов, не включая партнерские решения
Solar appScreener (ранее Solar inCode) - 48
Hyperledger Fabric - 23
Windows Azure - 20
FIS Platform - 15
EXpress Защищенный корпоративный мессенджер - 12
Другие 328
Solar appScreener (ранее Solar inCode) - 8
FIS Platform - 4
Java - 2
Турбо X - 2
Парадокс: MES Builder - 2
Другие 22
Solar appScreener (ранее Solar inCode) - 11
Форсайт. Мобильная платформа (ранее HyperHive) - 3
BSS Digital2Go - 3
Cloud ML Space - 2
Avaya Breeze (Avaya Engagement Development Platform) - 1
Другие 8